﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Media;

namespace Mahanet.Abyss.PathCalculation
{
	public interface IDataDisplayer
	{
		void AddDataPoint(string dataGroupName, double x, double y);
		void AddFunction(string dataGroupName, FunctionApproximation<double, Coordinate2D> function);

		void AddDataPoint(string dataGroupName, double x, double y, Color pointColor, int size);
		void AddFunction(string dataGroupName, FunctionApproximation<double, Coordinate2D> function, Color functionColor, int size);

		void DisplayStatus(string s);

		void ClearPoints();

		void ClearPoints(string dataGroupName);

		void MarkErrorInPoint(Coordinate2D realValue, Coordinate2D approximation, int numberOfPointsGiven, int targetPoint);

		void MarkDangerZone(Segment2D dangerZone);

		void AddGunAngle(Coordinate2D coordinate2D, Vector2D vector2D);
	}
}
